﻿using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;
using Volo.Abp.Application.Services;

namespace mozhi.smarterp.AuthorCenter.ApiMetadatas
{
    public interface IApiMetadataAppService : IApplicationService
    {
        Task<PagedResultDto<ApiMetadataDto>> GetListAsync(PagedResultRequestDto filter);

        Task<List<ApiMetadataDto>> GetListAsync(ApiMetadataPagedResultRequestDto filter);

        Task<ApiMetadataDto> GetAsync(Guid id);

        Task<ApiMetadataDto> FindAsync(string scope, string path, string method);

        Task<ApiMetadataDto> CreateAsync(ApiMetadataCreateDto input);

        Task<ApiMetadataDto> UpdateAsync(ApiMetadataUpdateDto input);

        Task DeleteAsync(Guid id);
    }
}
